package com.wish233.wiliwilivideo.service;

import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.wish233.wiliwilivideo.domain.dto.video.VideoCreateRequest;
import com.wish233.wiliwilivideo.domain.dto.video.VideoQueryRequest;
import com.wish233.wiliwilivideo.domain.dto.video.VideoUpdateRequest;
import com.wish233.wiliwilivideo.domain.po.Video;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wish233.wiliwiliapi.domain.vo.VideoVO;

import java.util.List;

/**
* @author WHH
* @description 针对表【video(视频表)】的数据库操作Service
* @createDate 2025-03-04 16:39:04
*/
public interface VideoService extends IService<Video> {

    Long createVideo(VideoCreateRequest videoCreateRequest);

    boolean updateVideo(VideoUpdateRequest videoUpdateRequest);

    boolean deleteVideo(Long videoId);

    Wrapper<Video> getQueryWrapper(VideoQueryRequest videoQueryRequest);

    Boolean addViewCount(Long id);

    VideoVO getVideoById(Long id);

    List<VideoVO> getAllVideo();

}
